Electronic databases of product data are widespread and have many uses. One example of a software tool for creating and maintaining product data is a product master data software application distributed by SAP A.G. of Walldorf, Germany. Product data stored in an electronic database may be referred to generally as “product master data,” in that the product data is typically centrally stored and maintained, and thus accessible for various different software applications that during their operation interact with the product data database, either to access previously stored product data or to create and revise product data.
In a common database software design configuration, products may be logically organized to fall within a particular product category. In such a case, a product category may have a data structure definition that is created for the category and that defines the various product attributes that are possible for product records within the category that are created and stored in the product data database. Thus, upon creation of new product database record, or instance, that is a member of the defined product category, the product record inherits the attributes defined for the product category.
A product attribute defined for a product category may be defined in the product category data structure to be an identifier type of attribute. This enables the attribute to be used as an identifier of a product record by various software applications that use the product data. For example, a value for an identifier type of attribute may be displayed as header information on a user interface when a product record is retrieved from the database. Also, the identifying attribute may be used as a search field for product records stored in the database. In some known systems, there is provided no possibility to search for normal attributes (that is, attributes that have not been defined to be identifier-type attributes) without modifying the product data model through a hard software coding procedure.
Moreover, a product category data structure definition may be hard-coded, and an experienced software programmer may be needed to create and revise the data structure. As such, the attribute or attributes defined to be identifier-type attribute or attributes may be established in the product category data structure such that those definitions cannot be easily changed. This is disadvantageous in scenarios where many different software procedures, perhaps from many different application software programs, all make use of the same product data database. Different identifying characteristics, or attributes, may be useful for different software application program procedures. This is also disadvantageous because it limits the usefulness and flexibility of using the product data database in a wide range of applications.